Propuesta de Interface para la Tabla de Símbolos import java.util.xxxMap; //objeto selecionado de tipo Map import ......Simbolo; import ......TipoDato; /** * * Utiliza dos clases definidas : * class Simbolo .- Simbolo terminal * class TipoDato .- tipo de dato * */ public interface TablaSimbolos { /** * La Interface tipo Map en Java, * (Map, HashMap, TreeMap, LinkedHashMap, WeakHashMap, SortedMap) * nos permite representar una estructura de datos para almacenar * pares “clave/valor”; de tal manera que para una clave solamente * tenemos un valor. * * tablaSimbolos .- Estructura de tipo Map para Almacen de símbolos * listaVariables.- Estructura de tipo Map para Almacen de variables */ static Map tablaSimbolos = null; static Map listaVariables = null; /** * METODOS (deseables) */ /** * getTablaSimbolos .- Devuelve la Tabla de Simbolos */ public Map getTablaSimbolos(); /** * getListaVariables .- Devuelve la lista de variables */ public Map getListaVariables(); /** * Inserta un Simbolo en la Lista de Variables * Si es nuevo ......,TODO * Si ya existe ..... TODO * * @param nombre * @param tipoDato * @return booleano True o False */ public boolean Insertar_ListaVariables(String nombre, TipoDato tipoDato) ; /** * Inserta un Simbolo en la Tabla de Simbolos * Si es nuevo ......, TODO * Si ya existe ...... TODO * * @param nombre * @param tipoDato * @return booleano True o False */ public boolean Insertar_TablaSimbolo(String nombre, TipoDato tipoDato) ; /** * Modificar el tipo de dato de un Simbolo en la Tabla de Simbolos * * @param nombre * @param tipoDato */ public void ModificarTipo_TablaSimbolo(String nombre, TipoDato tipoDato) ; /** * Modificar el tipo de dato de un Simbolo en la Lista de Variables * * @param nombre * @param tipoDato */ public void ModificarTipo_ListaVariables(String nombre, TipoDato tipoDato) ; /** * Buscar un simbolo en la Tabla de Simbolos * * @param nombre * @return Simbolo */ public Simbolo BuscarSimbolo_TablaSimbolo(String nombre) ; /** * Buscar un simbolo en la ListaVariables * * @param nombre * @return Simbolo */ public Simbolo BuscarSimbolo_ListaVariables(String nombre) ; /** * Imprimir Tabla de Simbolos y la Lista de Variables */ public void Imprimir() ; }